#pragma once

#include <AVUICommon.h>
#include <AVUIApplication.h>
#include <AVUIObjectCollection.h>
#include <AVUIUIElement.h>

#include <OgreFull.h>

#include <DebugHelper.h>

class DeleteChild
{   
public:
    template<typename T>
    void operator() (T t) { delete t; }
};


#pragma warning(disable : 4355) // Disables 'this' passed to base members. In practice, this is a reasonable thing to do.

